import java.sql.*;

public class Base {
    //数据库管理
    Statement sta;
    String sql;
    String sql_;

    public Base() throws SQLException, ClassNotFoundException {

        //加载驱动类
        Class.forName("com.mysql.jdbc.Driver");
        String url="jdbc:mysql://localhost:3306/mob";
        String user="root";
        String password="105875";
        //获取连接对象
        Connection con = DriverManager.getConnection(url,user,password);
        //获取执行者---操作数据库
        Statement sta=con.createStatement();
        //判断连接
        if(con==null){
            System.out.println("连接失败");
        }else{
            System.out.println("连接成功");
        }
        this.sta=sta;
    }


    //添加书
    //删除书
    //修改书


    //获取用户信息--id
    public ResultSet getUserData(String id) throws SQLException {
        sql="select* from user where id='%s';";
        sql_=String.format(sql,id);
        return sta.executeQuery(sql_);
    }
    //注册用户
    public void addUser(People p) throws SQLException {
        String sql ="insert into user(id,name,password,tele,type)" +
                "values('%s','%s','%s','%s',%d);";
        String sql_=String.format(sql,p.getId(),p.getName(),p.getPassword(),p.getTele(),p.getType());
        if(sta.executeUpdate(sql_)>=1){//用于操作数据库且判断数据是否修改
            System.out.println("注册成功");
        }else{
            System.out.println("注册失败");
        }
    }
    //获取最大用户id
    public String getMaxUserId() throws SQLException {
        ResultSet re=sta.executeQuery("select max(id) from user;");
        String id=null;
        while(re.next()){
            id=re.getString("max(id)");
        }
        return id;
    }
    //注销用户
    public void deleteUser(String id) throws SQLException {
        sql ="delete from user where id='%s'";
        sql_=String.format(sql,id);
        if(sta.executeUpdate(sql_)>=1){//用于操作数据库且判断数据是否修改
            System.out.println("注销成功");
        }else{
            System.out.println("注销失败");
        }
    }
    //用户修改个人信息--this
    public void updatePerson(People p) throws SQLException {
        sql ="update user set name='%s',password='%s',tele='%s',type=%d where id='%s';";
        sql_=String.format(sql,p.getName(),p.getPassword(),p.getTele(),p.getType(),p.getId());
        if(sta.executeUpdate(sql_)>=1){//用于操作数据库且判断数据是否修改
            System.out.println("修改成功");
        }else{
            System.out.println("修改失败");
        }
    }
    //管理员修改用户
    public void updateUser(People p){

    }
    //获取所有书信息
    public ResultSet getBook() throws SQLException {
        return sta.executeQuery("select* from book;");
    }

    //对书都传
    //查询书----id
    public ResultSet getBookById(String id) throws SQLException {
        sql="select* from book where id='%s';";
        sql_=String.format(sql,id);
        return sta.executeQuery(sql_);
    }
    //查询书----name
    public ResultSet getBookByName(String name) throws SQLException {
        sql="select* from book where name='%s';";
        sql_=String.format(sql,name);
        return sta.executeQuery(sql_);
    }
    //查询书----author
    public ResultSet getBookByAuthor(String author) throws SQLException {
        sql="select* from book where author='%s';";
        sql_=String.format(sql,author);
        return sta.executeQuery(sql_);
    }
    //查询书----press
    public ResultSet getBookByPress(String press) throws SQLException {
        sql="select* from book where Press='%s';";
        sql_=String.format(sql,press);
        return sta.executeQuery(sql_);
    }


    //修改图书

    //删除书

    //添加书

    //添加借书记录

    //




}
//用例

//            String id,name,author,press,price,pressDate;
//            id=sc.next();
//            name=sc.next();
//            author=sc.next();
//            press=sc.next();
//            price=sc.next();
//            pressDate=sc.next();
//            //sql语句
//            String sql ="insert into book(id,name,author,press,price,pressDate)" +
//                    "values('%s','%s','%s','%s',%s,'%s');";
//            String sql2=String.format(sql,id,name,author,press,price,pressDate);
//            if(sta.executeUpdate(sql2)>=1){//用于操作数据库且判断数据是否修改
//                System.out.println("添加成功");
//            }else{
//                System.out.println("添加失败");
//            }
//            //System.out.println(sql2);
//            sql ="select* from book where id='%s';";
//            sql2=String.format(sql,id);
//            re=sta.executeQuery(sql2);
//            while(re.next()){
//                System.out.print(re.getString("id")+"\t");
//                System.out.print(re.getString("name")+"\t");
//                System.out.print(re.getString("author")+"\t");
//                System.out.print(re.getString("press")+"\t");
//                System.out.print(re.getString("price")+"\t");
//                System.out.println(re.getString("pressDate"));
//            }
//            re.close();
//            con.close();